package main

import (
	"fmt"
	"math/cmplx"
)

var (
	aa        = 3
	bb string = "sskn"
)

func variableZeroValue() {
	var a string
	var b int
	fmt.Printf("%q %d \n", a, b)
}

func variableInitialValue() {
	var a int = 3
	var b string = "abc"
	fmt.Printf("%q %d \n", b, a)

}

func variableTypeDeduction() {
	var a, b, c, s = 3, 4, true, "def"
	fmt.Println(a, b, c, s)
}

func variableShorter() {
	a, b, c, s := 3, 4, true, "def"
	fmt.Println(a, b, c, s)
}

func euler() {
	c := 3 + 4i
	fmt.Println(cmplx.Abs(c))
}

func enums() {
	const (
		cpp = iota
		_6
		java
		python
		golang
	)
	fmt.Println(cpp, java, python, golang)

	const (
		b = (1 << (10 * iota))
		kb
		mb
		gb
		tb
		pb
	)
	fmt.Println(b, kb, mb, gb, tb, pb)
}

func main() {

	enums()
}
